A typical computer system includes three basic elements, namely, a processor, a memory and an input/output system. The memory stores information, including data and instructions for processing the data, in a plurality of addressable storage locations. The processor enables information to be transferred, or fetched, to it, interprets the incoming information as either instructions or data, and processes the data in accordance with the instructions. The processor then transfers the processed data to addressed locations in the memory for storage. The input/output system also communicates with the memory and the processor in order to transfer information into the computer system and to obtain the processed data from it. Units comprising the input/output system normally operate in accordance with control information supplied to it by the processor. The control information defines the operations to be performed by the input/output units. Typical units comprising the input/output system include, for example, printers, video display terminals, and secondary information storage devices such as disk and tape storage units.
In a computer system, instructions are organized into programs. The programs are classified into systems programs and applications programs. The applications programs include such programs as, for example, word processing programs, spreadsheet programs, accounting programs, database programs and the like, which facilitate processing of an operator's data. The systems programs generally enable and schedule operations within the computer system, such as controlling and scheduling processing of the applications programs, controlling operation of the various units comprising the system such as memory and units comprising the input/output system.
Typically, applications programs are generally atomic, that is, they facilitate processing of input data to generate output data within a specific application domain. Generally, if an operator wishes to initiate processing operations outside of a particular application's domain, the user exits the one application and calls a second application for performing the processing operations required for the second domain, and, after generating the required processed data, exits the second application. Thereafter, the user may call the first application again to use the data that was processed by the second application.